import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
import { BaseScrollPageListResult } from "@/common/base/base.result";
import { EvaluationData } from "@/module/evaluation/evaluation.result";

class EvaluationComposeIndexResultEvaluation{
  @ApiProperty()
  title: string;
}
export class EvaluationComposeIndexResult extends BaseScrollPageListResult {
  @ApiProperty()
  title: string;

  @ApiProperty()
  earbudsEvaluationUuid: string;

  @ApiProperty()
  earbudsEvaluation: EvaluationComposeIndexResultEvaluation;

  @ApiPropertyOptional()
  soundSourceEvaluationUuid?: string;

  @ApiPropertyOptional()
  soundSourceEvaluation?: EvaluationComposeIndexResultEvaluation | null;

  @ApiProperty()
  earbudsEvaluationDataGroup: string;

  @ApiPropertyOptional()
  soundSourceEvaluationDataGroup?: string;

  @ApiProperty()
  updateTime: number;
}

export class EvaluationComposeShowResult extends EvaluationComposeIndexResult{
  @ApiProperty({
    type: [EvaluationData]
  })
  datas: EvaluationData[]
}
